home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 037a / svgabg.zip / INITSVGA.PAS < prev    next >
Pascal/Delphi Source File  |  1991-05-04  |  2KB  |  70 lines

  1. { Sample program that initializes the SuperVGA driver}
  2. Program Test256;
  3.  
  4. Uses Graph,Crt;
  5.  
  6. var
  7.   AutoDetect : pointer;
  8.   GraphMode, GraphDriver : integer;
  9.   Ky : Char;
  10.   Drv : Integer;
  11.  
  12. {$F+}
  13. function DetectVGA256 : Integer;
  14. var Vid : Integer;
  15.  
  16. begin
  17.   Writeln('Which video mode would you like to use?');
  18.   Writeln('  0) 320x200x256');
  19.   Writeln('  1) 640x400x256');
  20.   Writeln('  2) 640x480x256');
  21.   Writeln('  3) 800x600x256');
  22.   Writeln('  4) 1024x768x256');
  23.   Write('> ');
  24.   Readln(Vid);
  25.   DetectVGA256 := Vid;
  26. end;
  27.  
  28. function DetectVGA16 : Integer;
  29. var Vid : Integer;
  30.  
  31. begin
  32.   Writeln('Which video mode would you like to use? ');
  33.   Writeln('  0) 320x200x16');
  34.   Writeln('  1) 640x200x16');
  35.   Writeln('  2) 640x350x16');
  36.   Writeln('  3) 640x480x256');
  37.   Writeln('  4) 800x600x16');
  38.   Writeln('  5) 1024x768x16');
  39.   Writeln('>');
  40.   Readln(Vid);
  41.   return Vid;
  42.   DetectVGA16 := Vid;
  43. end;
  44.  
  45. {$F-}
  46.  
  47. begin
  48.   Writeln('Which driver would you like to use?');
  49.   Writeln('  0) Svga256');
  50.   Writeln('  1) Svga16');
  51.   Write('>');
  52.   Readln(Drv);
  53.   if (Drv = 1) 
  54.   begin
  55.     AutoDetect := @DetectVGA16;
  56.     GraphDriver := InstallUserDriver('SVGA16',AutoDetect);
  57.   end
  58.   else
  59.   begin
  60.     AutoDetect := @DetectVGA256;
  61.     GraphDriver := InstallUserDriver('SVGA256',AutoDetect);
  62.   end;
  63.   GraphDriver := Detect;
  64.   InitGraph(GraphDriver,GraphMode,'');
  65.   setcolor(15);
  66.   line(0,0,GetMaxX,GetMaxY);
  67.   line(0,GetMaxY,GetMaxX,0);
  68.   Ky := ReadKey;
  69.   CloseGraph;
  70. end.